package com.chengliang.bbs.mapper;

import com.chengliang.bbs.common.MyBaseMapper;
import com.chengliang.bbs.entry.User;

/**
 * @author chengliang
 */
public interface UserMapper extends MyBaseMapper<User> {


    /**
     * 查询用户基本信息
     * @param userId
     * @return
     */
    User selectUserByUserId(Integer userId);

    /**
     * 获取评论人信息
     * @param replyId 回复主键ID
     * @return
     */
    User selectReplyUserByReplyId(Integer replyId);

    /**
     * 查询帖子作者信息
     * @param replyId 回复主键ID
     * @return
     */
    User selectUserByReplyId(Integer replyId);

    /**
     * 查询帖子作者信息
     * @param jieId 帖子ID
     * @return
     */
    User selectUserByJieId(Integer jieId);

    /**
     * 根据昵称查询用户信息
     * @param nickName
     * @return
     */
    User selectUserByNickName(String nickName);

    /**
     * 根据邮箱获取用户昵称
     * @param email
     * @return
     */
    String selectNickNameByEmail(String email);

    /**
     * 邮箱或手机号注册
     * @param user 用户信息
     * @return
     *  是否注册成功
     */
    boolean registerEmailOrPhone(User user);

    /**
     * 判断邮箱或手机号 是否存在
     * 存在返回1 不存在返回null
     * @param loginName
     * @return
     */
    Integer isExistsEmailOrPhone(String loginName);

    /**
     * 验证昵称是否重复
     * 存在返回1 不存在返回null
     * @param nickName 昵称
     * @return 是否存在
     */
    Integer isExistsUserNickName(String nickName);
}
